package abs.dao;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class CUse100 extends CConexion {

    //private CLogin loginU = new CLogin();

    public CUse100() {
        super();
    }

    /*public boolean validarIngreso() throws SQLException {
        ResultSet rsBuscarUsuario = null;
        Statement stncBuscarUsuario = this.getConexion().createStatement();
        System.out.println(loginU.getUsuarioLogin());
        System.out.println(loginU.getClaveLogin());
        String sqlBuscarUsuario = "select * from use100 where use100logi='" + loginU.getUsuarioLogin() + "' and use100pass='" + loginU.getClaveLogin() + "' and use100nocia='" + loginU.getCompaniaActual() + "'";
        rsBuscarUsuario = stncBuscarUsuario.executeQuery(sqlBuscarUsuario);

        if (rsBuscarUsuario.next()) {
            return true;
        } else {
            return false;
        }
    }*/

    /*public ResultSet buscarUsuario(String nombre, String usuario) throws SQLException {
        String sqlBuscarUsuario = "select use100cdgo, use100nomb, use100logi, use100pass,use100rol from use100 where use100cdgo >= 0 and use100cdgo <=999999999";
        Statement stncBuscarUsuario = this.getConexion().createStatement();
        ResultSet rsBuscarUsuario = null;
        if (!nombre.isEmpty()) {
            sqlBuscarUsuario += " and use100nomb like '%" + nombre + "%'";
        }
        if (!usuario.isEmpty()) {
            sqlBuscarUsuario += " and use100nomb like '%" + usuario + "%'";
        }

        sqlBuscarUsuario += " and use100nocia='" + loginU.getCompaniaActual() + "'";

        rsBuscarUsuario = stncBuscarUsuario.executeQuery(sqlBuscarUsuario);

        return rsBuscarUsuario;
    }*/

    public String traerPassword(String codigo) throws SQLException {

        String sqlTraerPassword = "select use100pass from use100 where use100cdgo = '" + codigo + "'";
        Statement stncTraerPassword = this.getConexion().createStatement();
        ResultSet rsTraerPassword = null;
        String password = null;

        rsTraerPassword = stncTraerPassword.executeQuery(sqlTraerPassword);
        rsTraerPassword.next();
        password = rsTraerPassword.getString("use100pass");


        return password;
    }

    public void editarUsuario(String a[]) throws SQLException {
        String sqlEditarUsuario = "UPDATE use100 SET use100nomb = '" + a[1] + "',use100logi = '" + a[0] + "',use100pass = '" + a[2] + "',use100rol='" + a[4] + "' WHERE use100cdgo = '" + a[3] + "'";
        Statement stncEditarUsuario = this.getConexion().createStatement();
        stncEditarUsuario.executeUpdate(sqlEditarUsuario);
    }

    public int codigoMaximo() throws SQLException {
        String a = "";

        String sqlCodigoMaximo = "select max(use100cdgo) from use100";
        ResultSet rsCodigoMaximo = null;
        Statement stncCodigoMaximo = this.getConexion().createStatement();
        rsCodigoMaximo = stncCodigoMaximo.executeQuery(sqlCodigoMaximo);
        rsCodigoMaximo.next();
        a = rsCodigoMaximo.getString(1);


        return Integer.parseInt(a);
    }

    public void insertarUsuario(String a[]) throws SQLException {
        String sqlInsertarUsuario = "insert into use100 (use100logi,use100nomb,use100pass,use100rol)"
                + " values ('" + a[1] + "','" + a[2] + "','" + a[3] + "','" + a[4] + "')";
        Statement stncInsertarUsuario = this.getConexion().createStatement();
        stncInsertarUsuario.execute(sqlInsertarUsuario);
    }

    public void borrarUsuario(String codigo) throws SQLException {
        String sqlBorrarUsuario = "DELETE FROM use100 WHERE use100cdgo = " + codigo;
        Statement stncBorrarUsuario = this.getConexion().createStatement();
        stncBorrarUsuario.execute(sqlBorrarUsuario);
    }

    public boolean validarUsuario(String usuario, String password, String compania) throws SQLException {
        boolean resultado = true;
        String sqlLogin = "select * from use100 where use100nocia='" + compania + "' and use100logi='" + usuario + "' and use100pass='" + password + "'";
        Statement stncLogin = this.getConexion().createStatement();
        ResultSet rsLogin = stncLogin.executeQuery(sqlLogin);
        if (!rsLogin.next()) {
            resultado = false;
        }
        rsLogin.close();
        stncLogin.close();
        //this.getConexion().close();
        return resultado;
    }

    public String sucursalUsuario(String usuario, String password, String compania) throws SQLException {
        String sucursal = "";
        String sqlSucursal = "select use100sucu from use100 where use100logi='" + usuario + "' and use100pass='" + password + "' and use100nocia='" + compania + "'";
        Statement stncSucursal = this.getConexion().createStatement();
        ResultSet rsSucursal = stncSucursal.executeQuery(sqlSucursal);
        rsSucursal.next();
        sucursal = rsSucursal.getString(1);
        return sucursal;
    }

    /*public String nombreUsuario(String loginEmpleado) throws SQLException {
        String sqlNombreUsuario = "select use100nomb from use100 where use100nocia = '" + loginU.getCompaniaActual() + "' and use100logi = '" + loginEmpleado + "'";
        Statement stncNombreUsuario = this.getConexion().createStatement();
        ResultSet rsNombreUsuario = stncNombreUsuario.executeQuery(sqlNombreUsuario);
        rsNombreUsuario.next();
        String nombreEmpleado = rsNombreUsuario.getString("use100nomb");
        rsNombreUsuario.close();
        stncNombreUsuario.close();
        return nombreEmpleado;
    }*/

    /*public String areaUsuario(String loginEmpleado) throws SQLException {
        String sqlCodigoEmpleado = "select use100cdem from use100 where use100nocia = '" + loginU.getCompaniaActual() + "' and use100logi = '" + loginEmpleado + "'";
        Statement stncCodigoEmpleado = this.getConexion().createStatement();
        ResultSet rsCodigoEmpleado = stncCodigoEmpleado.executeQuery(sqlCodigoEmpleado);
        rsCodigoEmpleado.next();
        String codigoEmpleado = rsCodigoEmpleado.getString("use100cdem");
        rsCodigoEmpleado.close();
        stncCodigoEmpleado.close();
        String sqlAreaEmpleado = "select emp100cdar from nomemp100 where emp100nocia = '" + loginU.getCompaniaActual() + "' and emp100code = '" + codigoEmpleado + "'";
        Statement stncAreaEmpleado = this.getConexion().createStatement();
        ResultSet rsAreaEmpleado = stncAreaEmpleado.executeQuery(sqlAreaEmpleado);
        rsAreaEmpleado.next();
        String areaEmpleado = rsAreaEmpleado.getString("emp100cdar");
        rsAreaEmpleado.close();
        stncAreaEmpleado.close();
        return areaEmpleado;
    }*/

    public String rolUsuario(String usuario, String compania) throws SQLException {
        String sqlRolUsuario = "select use100rol from use100 where use100logi='" + usuario + "' and use100nocia='" + compania + "'";
        Statement stncRolUsuario = this.getConexion().createStatement();
        ResultSet rsRolUsuario = stncRolUsuario.executeQuery(sqlRolUsuario);
        rsRolUsuario.next();
        String rolUsuario = rsRolUsuario.getString("use100rol");
        rsRolUsuario.close();
        stncRolUsuario.close();
        return rolUsuario;

    }
}
